


#ifndef PF_PREVIEW_H
#define PF_PREVIEW_H

#include "pf_entitycontainer.h"
#include "lx_Export.h"

class PF_Entity;
class PF_GraphicView;
class PF_Vector;
class PF_MouseEvent;

/**
 * This class supports previewing. The PF_Snapper class uses
 * an instance of PF_Preview to preview entities, ranges, 
 * lines, arcs, ... on the fly.
 *

 */
class LX_EXPORT PF_Preview : public PF_Container {
public:
    PF_Preview(PF_Container* parent=NULL);
    ~PF_Preview();
	
    virtual void addEntity(PF_Entity* entity);
	void addCloneOf(PF_Entity* entity);
    virtual void addSelectionFrom(PF_Container& container);
    virtual void addAllFrom(PF_Container& container);
    virtual void addStretchablesFrom(PF_Container& container,
	       const PF_Vector& v1, const PF_Vector& v2);

private:
	int maxEntities;
};

#endif
